package com.swsc.solarverse.dao.entity.forward;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.swsc.solarverse.dao.entity.base.BaseIntIdDO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author AutoGenerator
 * @since 2024-05-08
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("solar_forward_string_le_diagnose_record")
public class ForwardStringLeDiagnoseRecordDO extends BaseIntIdDO {


    @TableField("tenant_no")
    private Integer tenantNo;

    @TableField("organ_no")
    private Integer organNo;

    @TableField("device_name")
    private String deviceName;
    /**
     * 设备编码
     */
    @TableField("device_code")
    private String deviceCode;

    /**
     * 上级设备id
     */
    @TableField("device_pid")
    private Long devicePid;

    /**
     * 设备id
     */
    @TableField("device_id")
    private Long deviceId;

    /**
     * 能效
     */
    @TableField("efficiency")
    private Double efficiency;

    /**
     * 诊断时间
     */
    @TableField("diagnose_time")
    private LocalDateTime diagnoseTime;

    /**
     * 平均电压
     */
    @TableField("avg_u")
    private Double avgU;

    /**
     * 平均电流
     */
    @TableField("avg_i")
    private Double avgI;

    /**
     * 子阵平均电压
     */
    @TableField("submatrix_avg_u")
    private Double submatrixAvgU;

    /**
     * 子阵平均电流
     */
    @TableField("submatrix_avg_i")
    private Double submatrixAvgI;


    /**
     * 电压中位数
     */
    @TableField("median_u")
    private Double medianU;

    /**
     * 电流中位数
     */
    @TableField("median_i")
    private Double medianI;

    /**
     * 子阵平均电压
     */
    @TableField("submatrix_avg_median_u")
    private Double submatrixAvgMedianU;

    /**
     * 子阵平均电流
     */
    @TableField("submatrix_avg_median_i")
    private Double submatrixAvgMedianI;

    /**
     * 子阵
     */
    @TableField("submatrix")
    private String submatrix;
    @TableField("submatrix_string_num")
    private Integer submatrixStringNum;

    @TableField("low_i")
    private Double lowI;
    @TableField("low_u")
    private Double lowU;
    /**
     * 损失电流
     */
    @TableField("loss_i")
    private Double lossI;

    /**
     * 损失电压
     */
    @TableField("loss_u")
    private Double lossU;

    /**
     * 损失功率
     */
    @TableField("loss_p")
    private Double lossP;

    /**
     * 损失电量
     */
    @TableField("loss_e")
    private Double lossE;

    @TableField("create_time")
    private LocalDateTime createTime;

    public ForwardStringLeDiagnoseRecordDO(){}

    public ForwardStringLeDiagnoseRecordDO(Integer tenantNo, Integer organNo, Long devicePid, Long deviceId, String deviceName, String deviceCode, String submatrix) {
        this.tenantNo = tenantNo;
        this.organNo = organNo;
        this.devicePid = devicePid;
        this.deviceId = deviceId;
        this.deviceName = deviceName;
        this.deviceCode = deviceCode;
        this.submatrix = submatrix;
    }
}
